package com.ruoyi.base.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;
import java.util.List;

public class BaseRegion extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 区域编码 */
    private String code;

    /** 区域名称 */
    @Excel(name = "区域名称")
    private String name;

    /** 上级区域编码 */
    private String parentCode;

    /** 经度 */
    @Excel(name = "经度")
    private String longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String latitude;

    /** 行政区简称 */
    @Excel(name = "行政区简称")
    private String shortName;

    /** 行政区级别代码 */
    private String levelCode;

    /** 行政区首府 */
    private String capital;

    /** 备注 */
    private String comment;

    /** 有效时间起 */
    private Date beginTime;

    /** 有效时间止 */
    private Date endTime;

    /** 使用状态 */
    private Integer lifeStatus;

    /** $column.columnComment */
    private Integer ordernum;

    private String currentNode; //是否包含当前节点 1包含，0不包含

    private List<BaseRegion> children;

    private List<String> codes;
    private List<String> RiverIDs;

    //是否参与计算 0-不参与 1-参与
    private String isStatistics;
    private String countyCode;

    public List<String> getRiverIDs() {
        return RiverIDs;
    }

    public void setRiverIDs(List<String> riverIDs) {
        RiverIDs = riverIDs;
    }

    public String getCountyCode() {
        return countyCode;
    }

    public void setCountyCode(String countyCode) {
        this.countyCode = countyCode;
    }

    public List<String> getCodes() {
        return codes;
    }

    public void setCodes(List<String> codes) {
        this.codes = codes;
    }

    public List<BaseRegion> getChildren() {
        return children;
    }

    public void setChildren(List<BaseRegion> children) {
        this.children = children;
    }

    public String getCurrentNode() {
        return currentNode;
    }

    public void setCurrentNode(String currentNode) {
        this.currentNode = currentNode;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getParentCode() {
        return parentCode;
    }

    public void setParentCode(String parentCode) {
        this.parentCode = parentCode;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public String getShortName() {
        return shortName;
    }

    public void setShortName(String shortName) {
        this.shortName = shortName;
    }

    public String getLevelCode() {
        return levelCode;
    }

    public void setLevelCode(String levelCode) {
        this.levelCode = levelCode;
    }

    public String getCapital() {
        return capital;
    }

    public void setCapital(String capital) {
        this.capital = capital;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getLifeStatus() {
        return lifeStatus;
    }

    public void setLifeStatus(Integer lifeStatus) {
        this.lifeStatus = lifeStatus;
    }

    public void setOrdernum(Integer ordernum)
    {
        this.ordernum = ordernum;
    }

    public Integer getOrdernum()
    {
        return ordernum;
    }

    public String getIsStatistics() {
        return isStatistics;
    }

    public void setIsStatistics(String isStatistics) {
        this.isStatistics = isStatistics;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("Code", getCode())
                .append("Name", getName())
                .append("ParentCode", getParentCode())
                .append("Longitude", getLongitude())
                .append("Latitude", getLatitude())
                .append("ShortName", getShortName())
                .append("LevelCode", getLevelCode())
                .append("Capital", getCapital())
                .append("Comment", getComment())
                .append("BeginTime", getBeginTime())
                .append("EndTime", getEndTime())
                .append("LifeStatus", getLifeStatus())
                .append("ordernum", getOrdernum())
                .toString();
    }

}
